.card {
  position: relative;
  overflow: hidden;
  margin-top: 1rem;
  border-radius: 8px;
  background: var(--card-bg);
  -webkit-box-shadow: 0 4px 8px 6px rgba(7, 17, 27, 0.06);
  box-shadow: 0 4px 8px 6px rgba(7, 17, 27, 0.06);
  -webkit-transition: all 0.3s;
  -moz-transition: all 0.3s;
  -o-transition: all 0.3s;
  -ms-transition: all 0.3s;
  transition: all 0.3s;

  &:hover {
    -webkit-box-shadow: 0 4px 12px 12px rgba(7, 17, 27, 0.15);
    box-shadow: 0 4px 12px 12px rgba(7, 17, 27, 0.15);
  }

  .content {
    padding: 1rem 1.2rem;

    .header {
      padding-bottom: 0.3rem;
      font-size: 1.2em;

      span {
        margin-left: 0.5rem;
      }
    }

    .toc {
      overflow-y: auto;
      max-height: calc(100vh - 120px);

      &:before {
        position: absolute;
        top: 0.6rem;
        right: 1.2rem;
        color: #a9a9a9;
        content: attr(progress-percentage);
        font-style: italic;
        font-size: 1.2rem;
      }
      ul {
        //padding-left: 0.4rem;
        margin-right: 1.6rem;
        list-style: decimal;
        li {
          a {
            display: block;
            padding-left: 0.3rem;
            border-left: 3px solid transparent;
            color: var(--toc-link-color);
            -webkit-transition: all 0.2s ease-in-out;
            -moz-transition: all 0.2s ease-in-out;
            -o-transition: all 0.2s ease-in-out;
            -ms-transition: all 0.2s ease-in-out;
            transition: all 0.2s ease-in-out;
            overflow-wrap: break-word;
            text-decoration: none;
            &:hover {
              color: #49b1f5;
            }
          }
        }
      }
    }
  }
}
